import Axios from "axios";
import router from "../router"
Axios.defaults.timeout=5000;//超时时间是5秒
Axios.defaults.withCredentials=true//允许跨域
// Content-type 相应头
Axios.defaults.headers.post['Content-type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
// 基础url
Axios.defaults.baseURL = "http://localhost:8088";
// 拦截器
Axios.interceptors.response.use(
    response=>{
        // 如果status是200.说明访问成功
        if(response.status==200){
            return Promise.resolve(response);
        }else{
            return Promise.reject(response);
        }
    },
    error=>{
       if(error.response.status){
           switch(error.response.status){
               case 401://未登录
                    router.replace({
                        path:'/',
                        query:{
                            redirect: router.currentRouter.fullPath
                        }
                    });
                    break;
                    case 404://未找到
                    break;
           }
           return Promise.reject(error.response);
       } 
    }
);

/**
 * 封装get
 */
export function get(url,params={}){
    return new Promise((resolve,reject)=>{
        Axios.get(url,{params:params})
        .then(response=>{
            resolve(response.data);
        })
        .catch(err=>{
            reject(err);
        })
    });
}
/**
 * 封装post
 */
 export function post(url,data={}){
    return new Promise((resolve,reject)=>{
        Axios.post(url,data)
        .then(response=>{
            resolve(response.data);
        })
        .catch(err=>{
            reject(err);
        })
    });
}
